Selective call communication (paging) systems typically comprise a radio frequency transmitter/encoder (base station) that is accessed via a link to the Public Switched Telephone Network (PSTN) and a radio receiver (e.g., a selective call receiver or the like) that has at least one unique call address associated therewith. Operationally, the selective call receiver receives and decodes information transmitted from the base station, the information having an address and possibly a data or voice message. When the selective call receiver detects its address, it typically alerts the user and presents any received information.
To implement messaging capability in a paging system, the address and message information referred to are transmitted using a protocol such as GSC (Motorola's Golay Sequential Code) or POCSAG (a code from Great Britain's Post Office Code Standardisation Advisory Group). These protocol formats are designed to communicate messages to at least one selective call receiver and are well known to one of ordinary skill in the art of Paging systems. A typical selective call message may consist of an address signal if the message is a tone only message, or an address signal and a data packet if the message is a data message.
Present selective call receivers receive messages in a first in--last out format, that is, the newest message is displayed or located at the top of a message queue and the oldest message is at the bottom of the message queue. Because a user must navigate through the messages received after the message that the user desires to present, this organization is quite cumbersome if a user desires to retrieve a message anywhere except at the top of the message queue. Furthermore, if the selective call receiver has either multiple addresses or sub-addressing capability (multiple addresses decoded from data transmitted in conjunction within a single conventional address), the received messages are stored in the same order as if they were received in a simplistic single address selective call receiver. This forces the user to search through many unrelated messages to find a message of interest.
A further problem with contemporary selective call receivers is that received messages are stored in sequentially allocated memory slots that are fixed in length at the time of receipt of a message. This creates a problem when the user deletes a message, in that the memory slot(s) previously occupied by the message(s) are left unused until message memory is cleared. In conventional selective call receivers, the only time that message memory is cleared is when the receiver's power is removed or a system reset occurs. Both of these alternatives are not desirable as they both cause the loss of all previously received messages.
Consequently, there is a need for a system in a selective call receiver that can efficiently manage a dynamic allocation of available message memory while at the same time maintaining a dynamically configured hierarchical structure that allows a user easy access to received selective call messages.